Scala Macros, a Technical Report

نویسندگان

  • Eugene Burmako
  • Martin Odersky
چکیده

Metaprogramming is a powerful technique of software development, which allows to automate program generation. Applications of metaprogramming range from improving expressiveness of a programming language via deep embedding of domain-specific languages to boosting performance of produced code by providing programmer with finegrained control over compilation. In this report we introduce macros, facility that enables compile-time metaprogramming in the Scala programming language.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Scala Macros, a Technical Report (meta 2012)

Metaprogramming is a powerful technique of software development, which allows to automate program generation. Applications of metaprogramming range from improving expressiveness of a programming language via deep embedding of domain-specific languages to boosting performance of produced code by providing programmer with finegrained control over compilation. In this report we introduce macros, f...

متن کامل

Two Approaches to Portable Macros

For any programming language that supports macros and has multiple implementations (each with di‚erent AST definitions), there is a common problem: how to make macros that operate on ASTs portable among di‚erent compiler implementations? Implementing portable macros is especially important for statically typed languages like Scala, as IDE vendors usually have di‚erent implementations of the lan...

متن کامل

Project Kepler: Compile-Time Metaprogramming for Scala

Metaprogramming is a powerful technique of software development, which allows to automate program generation. Applications of metaprogramming range from improving expressiveness of a programming language via deep embedding of domain-specific languages [1] to boosting performance of produced code by providing programmer with fine-grained control over compilation [2]. In this report we introduce ...

متن کامل

Unification of Compile-Time and Runtime Metaprogramming in Scala

Metaprogramming is a technique that consists in writing programs that treat other programs as data. This paradigm of software development contributes to a multitude of approaches that improve programmer productivity, including code generation, program analysis and domain-specific languages. Many programming languages and runtime systems provide support for metaprogramming. Programming platforms...

متن کامل

Compiling LINQ and a Scala subset into SQL:1999

Persistent programming languages have yet to embrace two relatively recent developments: (a) the integration of the functional and object paradigms; and (b) advances in optimization techniques for functional query languages. The expressiveness thus gained over the relational data model calls for an extended research agenda. We focus in this technical report on two subproblems from that agenda. ...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2012